/**
 * 订单列表 的js操作
 */
//统一调用
getOrderList(1);

/*
 * 获取所有的订单信息
 */
function getOrderList(pageNum){
	// ajax
	$.ajax({
		url: 'user/order/getList',
		type: 'post',
		data:{pageNum: pageNum,status: status},
		dataType: 'json',
		success: function(resp){
			let html1 = template('all_novel', {data:resp.data});
			//将渲染完成的数据挂载在页面上
			$('#novel_table').html(html1);

			var html = "";
			$.each(resp.data.list, function(index, item){
				
				// 遍历当前订单下的详情, 统计总金额
				var sum = 0;
				$.each(item.orderDetails, function(i, detail){
					sum += detail.price*detail.count;
				});
				
				html += '<div class="order-box '+(item.status<1 ? 'order-pay': '')+'">\
							<div class="order-header">\
								<div class="status '+(item.status<1 ? 'status-pay': '')+'">'
								+ ['等待付款', '等待发货', '运送中', '已收货', '退货中', '已退货','已退货'][item.status] +
								'</div>\
							</div>\
							\
							<table class="detail">\
								<thead>\
									<tr>\
										<th class="info">'+item.createTime+' | '+(item.addr!=null?item.addr.contact:'')+' | 订单号：'+item.id+'| 在线支付（支付宝快捷支付）</th>\
										<th class="money">应付金额： <span>'+sum+'</span> 元</th>\
									</tr>\
								</thead>\
								<tbody>'
						$.each(item.orderDetails, function(i, detail){
							html += '<tr>\
										<td class="goods">\
											<div class="goods-box">\
												<div class="img">\
													<a href=""><img src="upload/'+detail.goods.picList[0].url+'" ></a>\
												</div>\
												<div class="goods-info">\
													<p class="name"><a href="/goods?id='+detail.goods.id+'">'+detail.goods.name+' '+detail.goods.version+' '+detail.goods.color+'</a></p>\
													<p class="price">'+detail.price+'元 x '+detail.count+'</p>\
												</div>\
											</div>\
										</td>\
										<td class="actions">';
							if (item.status == 0) {
								html += '<a class="active" href="/user/order/toPay?orderId='+item.id+'">立即付款</a>';
							}
							if (item.status < 3) {
								html += '<a href="javascript:void(0);" id="comfirm" data-order-id="'+item.id+'" >确定收货</a>';
							}

							// 添加条件以判断是否显示“取消订单”按钮
							if (item.status == 0) {
								html += '<a href="javascript:void(0);" id="cancel" data-order-id="'+item.id+'" >取消订单</a>';
							}
							if (item.status == 3) {
								html += '<a href="javascript:void(0);" id="refund" data-order-id="'+item.id+'" >确定退款</a>';
							}

						});
				
						html +=	'</tbody>\
							</table>\
						</div>';
			});
			
			$('.order-list').html(html);
		},
		error: function(){
			
		}
	});
}

layui.use(['layer', 'jquery'], function() {
	var layer = layui.layer;
	var $ = layui.jquery;

	// 使用事件委托方式绑定点击事件
	$(document).on('click', '#refund', function() {
		var orderId = $(this).data('order-id');
		// 显示弹窗
		layer.open({
			title: '订单操作',
			content: '你确定要退款吗？',
			btn: ['确定', '取消'],
			yes: function(index, layero) {
				// 在这里处理确认操作
				$.ajax({
					url: 'user/order/update',
					type: 'post',
					data:{id: orderId,status: 6},
					dataType: 'json',
					success: function(resp){
						if(resp.code === 10000){
							getOrderList(1);
						}
					}
				})
				layer.close(index); // 如果需要关闭最新弹层，执行 layer.close(index);
			},
			btn2: function(index, layero) {
				//按钮【按钮二】的回调
				// 返回false将阻止关闭
				return true;
			}
		});
	});

	$(document).on('click', '#cancel', function() {
		var orderId = $(this).data('order-id');
		// 显示弹窗
		layer.open({
			title: '订单操作',
			content: '你确定要取消订单吗？',
			btn: ['确定', '取消'],
			yes: function(index, layero) {
				// 在这里处理确认操作
				$.ajax({
					url: 'user/order/update',
					type: 'post',
					data:{id: orderId,status: 6},
					dataType: 'json',
					success: function(resp){
						if(resp.code === 10000){
							getOrderList(1);
						}
					}
				})
				layer.close(index); // 如果需要关闭最新弹层，执行 layer.close(index);
			},
			btn2: function(index, layero) {
				//按钮【按钮二】的回调
				// 返回false将阻止关闭
				return true;
			}
		});
	});


	$(document).on('click', '#comfirm', function() {
		var orderId = $(this).data('order-id');
		// 显示弹窗
		layer.open({
			title: '订单操作',
			content: '你确定要收货吗？',
			btn: ['确定', '取消'],
			yes: function(index, layero) {
				// 在这里处理确认操作
				$.ajax({
					url: 'user/order/update',
					type: 'post',
					data:{id: orderId,status: 3},
					dataType: 'json',
					success: function(resp){
						if(resp.code === 10000){
							getOrderList(1);
						}
					}
				})
				layer.close(index); // 如果需要关闭最新弹层，执行 layer.close(index);
			},
			btn2: function(index, layero) {
				//按钮【按钮二】的回调
				// 返回false将阻止关闭
				return true;
			}
		});
	});

});